package com.flute.haflute.agent.topo;

import java.util.Map;

import com.flute.haflute.common.ClusterConstants;

/**
 * DM提供拓扑状态同步服务, 绑定到CAJO远程服务
 */
public class ClusterTopoStatusNetWatcher {

	/**
	 * 一个节点是否可以用于执行JOB
	 * 
	 * @param node
	 * @return
	 */
	public Boolean isReady(Node node) {
		return true;
	}

	/**
	 * 更新拓扑数据库
	 * 
	 * @param clusterTopoDB
	 * @return
	 */
	public Boolean update(Map<Node, ClusterConstants.ROLE> clusterTopoDB) {
		ClusterTopoDBService.getInstance().getNodeRoleDB()
				.putAll(clusterTopoDB);
		return true;
	}

	/**
	 * 获取当前拓扑数据库
	 * 
	 * @return
	 */
	public Map<Node, ClusterConstants.ROLE> getStatus() {
		return ClusterTopoDBService.getInstance().getNodeRoleDB();
	}
}
